.water-waves {
    position: relative;
    width: 120px;
    height: 120px;
    overflow: hidden;
    border-radius: 50%;
    font-size: 40px;
    font-family: 'Giorgio Sans';
    color: #FFFFFF;
    font-weight: 400;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: inset 1px 1px 20px var(--color);
    animation: water-waves linear infinite;
    margin: 0 auto;

    &&::before {
        content: '';
        position: absolute;
        top: calc(100% - var(--completion));
        left: -35%;
        background: var(--color);
        opacity: 0.5;
        width: 200%;
        height: 200%;
        z-index: -1;
        border-radius: 40%;
        animation: inherit;
        animation-duration: 5s;
    }

    &&::after {
        content: '';
        position: absolute;
        top: calc(100% - var(--completion));
        left: -45%;
        background: var(--color);
        opacity: 0.7;
        width: 200%;
        height: 200%;
        border-radius: 40%;
        z-index: -1;
        animation: inherit;
        animation-duration: 7s;
    }
}

@keyframes water-waves {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}